
#include "tp2.h"


void cropflip_c    (
	unsigned char *src,
	unsigned char *dst,
	int cols,
	int filas,
	int src_row_size,
	int dst_row_size,
	int tamx,
	int tamy,
	int offsetx,
	int offsety)
{
        int i, j;
	// realizo el casteo para manejar los punteros como matrices
	unsigned char (*src_matrix)[src_row_size] = (unsigned char (*)[src_row_size]) src;
	unsigned char (*dst_matrix)[dst_row_size] = (unsigned char (*)[dst_row_size]) dst;

       // Se realiza un doble ciclo anidado a travees de la parte de la imagen que se quiere recortar 
       // y se copian, componente a componente\footnote{es decir cada uno de los cuatro bytes que componen 
       // el p\'ixel, R, G, B y alpha}, los valores de la imagen origen en la imagen destino, realizando el flip vertical.
       for (i = 0; i < tamy; i++) {			// ciclo por las filas
		for (j = 0; j < tamx*4; j++) {		// ciclo por las columnas (tamx * 4)
			dst_matrix[tamy - i - 1][j] = src_matrix[i + offsety][j + offsetx*4];	
		}
		j = 0; 
       }


}
